package com.prd.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.Objects;

/**
 * <p>
 * 客户-备注总表
 * </p>
 *
 * @author o1
 * @since 2023-11-25
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("customer_contact")
public class CustomerContactDO implements Serializable {

    private static final long serialVersionUID = 1L;

      @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 编号
     */
    private String no;

    /**
     * 项目id
     */
    private String projectId;

    /**
     * 公司名称
     */
    private String companyName;

    /**
     * 主营类别
     */
    private String companyCategories;

    /**
     * 主营类别id
     */
    private int companyCategoriesId;

    /**
     * 主营业务
     */
    private String companyBusiness;

    /**
     * 联系人/客人id
     */
    private String guestNo;

    /**
     * 联系人/客人名称
     */
    private String guestName;

    /**
     * 电话
     */
    private String guestPhone;

    /**
     * 邮箱
     */
    private String guestEmail;

    /**
     * 部门
     */
    private String guestDepartment;

    /**
     * 职务
     */
    private String guestJob;

    /**
     * 关系描述
     */
    private String guestDesc;

    /**
     * 信息来源
     */
    private String customerSource;

    /**
     * 合伙人码
     */
    private String customerPartnerCode;

    /**
     * 合伙人累计业绩
     */
    private String customerPartnerPer;

    /**
     * 合伙人累计分佣
     */
    private String customerPartnerBrokerage;

    /**
     * 决策层级: 主决策人1，副决策人2，影响人3，其他4，不定义5
     */
    private int guestJobLevelId;

    /**
     * 类型：客户关系人1 客户来源2，联系人3，合伙人4 
     */
    private int type;

    @Override
    public int hashCode() {
        return Objects.hashCode(id) & Integer.MAX_VALUE;
    }
}
